IconBox application stores icons of all other windows in compact scrollable window.
Installation:
Stretch is an System 7 CDEV/INIT (Control Panel/System Extension) that changes the way standard (WDEF 0) windows look and behave. Stretch Version 1.0 (StretchINIT) was packaged as an INIT (System Extension) and should be removed from your Extensions folder before Version 3.0 (this version) is placed in your Control Panels folder. If you are upgrading from version 2.0, just replace the Stretch file in your Control Panels folder. To start the optional IconBox application (part of the 3.0 release) automatically every time your machine starts up, place the IconBox application in the Startup Items folder in your system folder. You may start/stop the IconBox application at any time to experiment with its utility. If you choose not to use the IconBox application simply do not run it - the rest of Stretch will work fine without it.
1.0 Features:
For all standard (WDEF 0) window variants that have a grow box, Stretch adds a border around the entire window that may be used as handles for stretching the window. This allows the user to stretch any window in any direction instead of just allowing window growth downward and to the right. For those of you juggling lots of windows on your screen this should be a great help. No longer do you need to move the window upward or to the right so that you can stretch the window from the bottom left corner.
Another feature of this package is that you are able to move a window by dragging from anywhere in the border with any modifier key (shift, control, option or command) held down. This feature is important to remember if you ever stretch the title bar underneath the menu bar.
Because this patches WDEF 0, all applications benefit from this new window behavior. The new windows use the same color scheme as system 7.0 windows and windows that do not have grow boxes look an behave exactly the same (except for iconification - see below).
2.0 Features:
Stretch Version 2.0 brings more help for those of you juggling many windows: It now allows iconification of any standard (WDEF 0) window that has a title bar. Iconification is done by clicking a configurable number of times (1 to 4), with a configurable state of modifier keys (up, down or don't care for each of the shift, control, option and command keys), in the title bar of the window. Use the same technique anywhere in the icon to restore the window. The Stretch control panel can be used to configure the settings.
As released, Stretch responds to a double-click in the title bar with no regard to the state of the modifier keys. Although this is a handy trigger, be aware that sometimes applications may use this same trigger for some other action. For example, Microsoft products (e.g. Excel and Word) treat a double-click in the title bar the same as a click in the zoom box of the window. UserLand's Frontier uses a double-click to traverse up in its object hierarchy. Because of these possible collisions you may want to reconfigure Stretch to use some other trigger.
Once a window is iconified, all clicks behave the same as a click in the title bar.
The user should be aware of what Stretch 2.0 is doing when it iconifies a window because there is a side effect. When a window is iconified, Stretch fools the application into thinking the window has simply moved (but not resized!). Any subsequent updates to the window are suppressed (clipped). When the window is restored, the application is told the window has moved again and and told to refresh its contents. The side effect is that if you tell the application to close the window while it is iconified it will remember the iconified position instead of the restored position (if it remembers position at all). When the application opens up the window again it will be in the iconified position instead of the restored position.
When Stretch iconifies a window for the first time, it places the icon directly under the cursor. This is so the icon is immediately available for other placement (by dragging) and so that the icon is never positioned off the screen so that it can't be found.
3.0 Features:
The reason behind iconifying windows is to temporarily minimize the area that they take up on the screen so that the screen may be used by other windows that are, for the moment, more important to the user than the iconified window. Use of the IconBox application enables the user minimize the windows even further by
1. allowing icons to be smaller (small (16x16) or large (32x32) icons may be used).
2. keeping one icon per application (with a popup menu of the application's window names) instead of one icon per window.
3. automatically packing the icons into the content of another window (the Icon Box).
4. allowing the user to place, size and scroll through the window of packed icons.
5. optimal and conditional placement of normal (large) or small size scroll bars in the Icon Box window.
6 allowing the user to zoom the IconBox window to a standard state - that state that is just large enough to encompass all its icons without the need for scrolling.
7. allowing the user to iconify the IconBox window itself - thus, temporarily, minimizing all iconified windows to a single icon.
Typically the IconBox window is placed at an edge or corner of the desktop. Using small icons, one may place it along the right edge with little occlusion of desktop volume icons. Once placed at an edge, zooming to the standard state will always be done keeping this edge.
As the IconBox application becomes aware of a window, it is added to the IconBox. The first window for an application results in an icon and a popup menu with a single item (the name of this window) being added to the IconBox. Subsequent windows for this application are not given their own icons (a waste of screen space) but are added to the popup menu. To popup the menu simply click on the application’s icon. The menu lists the names of windows that are iconifiable (WDEF 0 windows). Check marks indicate the windows that are currently iconified and an underline indicates the topmost window.
Selecting a window from the menu toggles its iconified state and brings the associated application to the front. The application is not brought to the front if the control key is pressed when the button is released (don’t press control when popping up the menu - see below).
The menu may be used to select a window that is not iconified to be brought to the front by pressing the command key while releasing the button. In this manner, the IconBox menu behaves like a “Windows” menu for each application.
Notice that if the shift key is pressed when the button is clicked, a different menu is displayed: To iconify (hide) or show all windows of an application and bring the application to the front, click on its icon with the shift key pressed and select the appropriate menu option. The application is not brought to the front if the control key is pressed when the button is released (don’t press control when popping up the menu - see below).
Notice that if the control key is pressed when the button is clicked, no menu is displayed. One may use the Icon Box icons to switch between applications as one uses the application menu in the menu bar: hold down the control key and click on the application’s icon to have it become the frontmost application.
When the IconBox application quits it automatically restores all iconified windows.
If the user forgets that a window is hidden and selects it by some means other than using the IconBox application (e.g. some applications have a Window menu; the Finder has volume and folder icons from which windows can be opened) it may be frightening when the window does not appear when selected. The IconBox does not automatically restore the window in this situation but the user is alerted to the fact that the frontmost window of the frontmost application is hidden by a blinking icon in the IconBox. Clicking on the blinking icon will popup the application’s menu of window names and the menu item for the frontmost window will indicate that it has been iconified with a checkmark. The fact that it is the frontmost window is indicated with an underline.
The IconBox application’s notion of which is the frontmost window is not perfect and so you may see erroneous reports. These errors are benign but it may mean that the applications icon will not flash when it should and might flash when it shouldn’t.
There are times that an application may have windows that are not represented in the IconBox. One is when the windows do not use the standard WDEF 0 (Toolbars and palette windows are notorious for this). Another is when the windows are standard but the application has hidden the window itself; the IconBox application will not force an application to show a window that it has chosen to hide. Note that an application will only have an icon in the IconBox when it has at least one standard window and that the window menu will list only those windows that are not hidden by the application.
Bugs fixed since version 3.0:
Unexpected error 50471 from HyperCard when resize of stack is attempted has been fixed.
Stretch now works with System Enablers that replace 'WDEF' 0.
Bugs fixed since version 1.0:
Incompatibilities with Excel and HyperCard have been fixed.
Incompatibilities with a Think C Utility called PopUpFuncs has been fixed (as any incompatibility with programs that wish to override WDEF 0 by placing a new WDEF 0 in the resource fork of a file outside the System).
Option-dragging has been fixed to look at the modifier keys correctly.
Last, but by no means least:
Many thanks goes to those of you that have supported the development of Stretch with your shareware contributions. For those of you that use Stretch and have not yet mailed a check: C’mon (read please), isn’t it worth a measly $10?